From: Stefano Stabellini Date: Thu, 9 Feb 2012 11:33:28 +0000 (+0000) Subject: xen/common/Makefile: introduce HAS_{CPUFREQ,PCI,PASSTHROUGH,NS16550,KEXEC} X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https:/%22bookmarks://%22Dat/%22http:/www.example.com/cgi/%22https:/%22bookmarks:/%22Dat?a=commitdiff_plain;h=4e60158364638028e95855b5fdfd8e68cd70b225;p=xen.git xen/common/Makefile: introduce HAS_{CPUFREQ,PCI,PASSTHROUGH,NS16550,KEXEC} - make the compilation of ns16550.c depend upon HAS_NS16550; - make the compilation of cpufreq depend upon HAS_CPUFREQ; - make the compilation of pci depend upon HAS_PCI; - make the compilation of passthrough depend upon HAS_PASSTHROUGH; - make the compilation of kexec depend upon HAS_KEXEC. Signed-off-by: Stefano Stabellini Signed-off-by: Ian Campbell Signed-off-by: Tim Deegan Acked-by: Keir Fraser Committed-by: Ian Campbell --- xen/arch/ia64/Rules.mk | 5 +++++ xen/arch/x86/Rules.mk | 5 +++++ xen/common/Makefile | 2 +- xen/common/shutdown.c | 4 ++++ xen/drivers/Makefile | 6 +++--- xen/drivers/char/Makefile | 2 +- xen/drivers/char/console.c | 4 ++++ xen/include/asm-ia64/config.h | 1 + xen/include/asm-x86/config.h | 1 + 9 files changed, 25 insertions(+), 5 deletions(-) --- diff --git a/xen/arch/ia64/Rules.mk b/xen/arch/ia64/Rules.mk index bef11c3196..054b4def94 100644 --- a/xen/arch/ia64/Rules.mk +++ b/xen/arch/ia64/Rules.mk @@ -4,6 +4,11 @@ ia64 := y HAS_ACPI := y HAS_VGA := y +HAS_CPUFREQ := y +HAS_PCI := y +HAS_PASSTHROUGH := y +HAS_NS16550 := y +HAS_KEXEC := y xenoprof := y no_warns ?= n vti_debug ?= n diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk index 9fc6d42f9f..65275af9e8 100644 --- a/xen/arch/x86/Rules.mk +++ b/xen/arch/x86/Rules.mk @@ -3,6 +3,11 @@ HAS_ACPI := y HAS_VGA := y +HAS_CPUFREQ := y +HAS_PCI := y +HAS_PASSTHROUGH := y +HAS_NS16550 := y +HAS_KEXEC := y xenoprof := y # diff --git a/xen/common/Makefile b/xen/common/Makefile index 1d85e6586f..9249845832 100644 --- a/xen/common/Makefile +++ b/xen/common/Makefile @@ -8,7 +8,7 @@ obj-y += grant_table.o obj-y += irq.o obj-y += kernel.o obj-y += keyhandler.o -obj-y += kexec.o +obj-$(HAS_KEXEC) += kexec.o obj-y += lib.o obj-y += memory.o obj-y += multicall.o diff --git a/xen/common/shutdown.c b/xen/common/shutdown.c index e356e86591..b18ef5de6c 100644 --- a/xen/common/shutdown.c +++ b/xen/common/shutdown.c @@ -6,7 +6,9 @@ #include #include #include +#ifdef CONFIG_KEXEC #include +#endif #include #include @@ -58,7 +60,9 @@ void dom0_shutdown(u8 reason) case SHUTDOWN_watchdog: { printk("Domain 0 shutdown: watchdog rebooting machine.\n"); +#ifdef CONFIG_KEXEC kexec_crash(); +#endif machine_restart(0); break; /* not reached */ } diff --git a/xen/drivers/Makefile b/xen/drivers/Makefile index eb4fb61554..7239375331 100644 --- a/xen/drivers/Makefile +++ b/xen/drivers/Makefile @@ -1,6 +1,6 @@ subdir-y += char -subdir-y += cpufreq -subdir-y += pci -subdir-y += passthrough +subdir-$(HAS_CPUFREQ) += cpufreq +subdir-$(HAS_PCI) += pci +subdir-$(HAS_PASSTHROUGH) += passthrough subdir-$(HAS_ACPI) += acpi subdir-$(HAS_VGA) += video diff --git a/xen/drivers/char/Makefile b/xen/drivers/char/Makefile index ded9a94cc1..19250c8810 100644 --- a/xen/drivers/char/Makefile +++ b/xen/drivers/char/Makefile @@ -1,3 +1,3 @@ obj-y += console.o -obj-y += ns16550.o +obj-$(HAS_NS16550) += ns16550.o obj-y += serial.o diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c index dc9b9c58cd..64a99a67f6 100644 --- a/xen/drivers/char/console.c +++ b/xen/drivers/char/console.c @@ -22,7 +22,9 @@ #include #include #include +#ifdef CONFIG_KEXEC #include +#endif #include #include #include /* for do_console_io */ @@ -963,7 +965,9 @@ void panic(const char *fmt, ...) debugger_trap_immediate(); +#ifdef CONFIG_KEXEC kexec_crash(); +#endif if ( opt_noreboot ) { diff --git a/xen/include/asm-ia64/config.h b/xen/include/asm-ia64/config.h index 01734879a8..6e9fc98d0e 100644 --- a/xen/include/asm-ia64/config.h +++ b/xen/include/asm-ia64/config.h @@ -20,6 +20,7 @@ #define CONFIG_EFI #define CONFIG_EFI_PCDP #define CONFIG_SERIAL_SGI_L1_CONSOLE +#define CONFIG_KEXEC 1 #define CONFIG_XENOPROF 1 #define CONFIG_XEN_SMP diff --git a/xen/include/asm-x86/config.h b/xen/include/asm-x86/config.h index 18d0a052c1..28f5e2941f 100644 --- a/xen/include/asm-x86/config.h +++ b/xen/include/asm-x86/config.h @@ -49,6 +49,7 @@ #define CONFIG_HOTPLUG_CPU 1 #define CONFIG_XENOPROF 1 +#define CONFIG_KEXEC 1 #define HZ 100